package com.mune.gulimall.cart.service;

import com.mune.gulimall.cart.vo.Cart;
import com.mune.gulimall.cart.vo.CartItem;

import java.util.List;
import java.util.concurrent.ExecutionException;

public interface CartService {
  CartItem addCart(Long skuId, Integer num) throws ExecutionException, InterruptedException;

  CartItem getCartItemBySkuId(Long skuId);

  Cart getCart() throws ExecutionException, InterruptedException;

  void clearCart(String cartKey);

  void checkItem(Long skuId, Integer checked);

  void updateItemCount(Long skuId, Integer num);

  void deleteItem(Integer skuId);

  List<CartItem> getUserCartItems();
}
